#ifndef __GLOBAL_H__
#define __GLOBAL_H__

#define NUM_CHILD 5

typedef unsigned char bool;

struct treenode_t {
  struct treenode_t *next;
  struct treenode_t *child[NUM_CHILD];
};

// Type of token
typedef enum {
	ENDFILE,ERROR,
	IF,ELSE,WHILE,RETURN,VOID,INT,
	PLUS,MINUS,MUL,DIV,LT,LTEQ,GT,GTEQ,EQ,
	NEQ,ASSIGN,SEMI,COMMA,LPAREN,RPAREN,
	LSQUAR,RSQUAR,LBRACE,RBRACE,LCOMMENT,RCOMMENT,
	ID,NUMBER
} tokentype_t;

extern FILE* source;

#endif  // __GLOBAL_H__
